Sticky Order Routers

ABSTRACT

A sticky order routing system may include multiple order routers in communication with an electronic exchange for communicating transaction messages. Each of the order routers communicates transaction messages between multiple associated trading sessions and the electronic exchange, where of the associated trading sessions is assigned to the order router in communication with the electronic exchange. Transaction message traffic between the order routers and the electronic exchange is monitored, such as randomly, based on round-robin assignment, and/or trading data. In response to transaction message traffic exceeding a threshold, the trading session may be assigned to a new order router.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.12/895,419, filed Sep. 30, 2010, entitled “Sticky Order Routing,” thecontents of which are fully incorporated herein by reference for allpurposes.

TECHNICAL FIELD

The present invention relates generally to electronic trading, andparticularly to managing and routing financial transactions.

BACKGROUND

An electronic trading system generally includes an electronic exchangein communication with one or more trading devices. The electronicexchange generally includes one or more centralized computers thatreceive, match, and process orders to buy or sell tradeable objects fromtraders, other electronic trading systems and/or other exchanges.Tradeable objects may include, for example, stocks, options, futurescontracts, and commodities.

The electronic exchange transmits market data to the trading device.Market data includes, for example, data relating to a market for thetradeable object(s) to be traded, such as price data, market depth data,last traded quantity data, last traded price and data related to amarket for the tradeable object.

The trading device provides a tool that allows the trader to participatein or view data relating to one or more markets. The trading devicereceives the market data from the electronic exchange. Some tradingdevices are configured to create interactive trading screens. Ingeneral, an interactive trading screen enables a user to submit a tradeorder to the electronic exchange, obtain a market quote, and monitor aposition. The range and quality of features available on the interactivetrading screen varies according to the specific software providing theinteractive trading screen.

The trading device also or alternatively may not display the marketdata. For example, a trading device may be configured to provide analgorithmic trading platform and to derive aspects of a trade order(e.g., timing, price, and/or quantity of the order), and/or initiate andsend a trade order without (or with very little) human intervention.

Upon receipt of a trade order or request for a transaction, theelectronic exchange may enter the trade order into an exchange orderbook for matching against contra-side trade orders that also may besubmitted to the electronic exchange for matching. By way of example, asell order is contra-side to a buy order having the same price as thesell order. Similarly, a buy order is contra-side to a sell order withthe same price. An unmatched quantity may be kept in the exchange orderbook until the quantity is matched, cancelled, deleted or otherwiseremoved. Upon matching, the electronic exchange may send confirmation tothe trading device that trade order was matched.

A communication link may be provided between the trading device and theelectronic exchange. The communication link may be a wired link, awireless communication link, and combinations thereof. The communicationlink also may include one or more devices, such as networked computers,servers, gateways, order routers, and other related devices. The tradingdevice and the electronic exchange may electronic communicateinformation according to a message format and messaging protocols, suchas the TCP/IP protocol suite for the transport and network layers.

According to one type of trading communication, an order router may beassigned to administer communications between one or more tradingdevices and an electronic exchange. For example, a trader may sign ontoor otherwise register with an electronic exchange via a trading device.An order router may be used for and/or to provide communications withthe electronic exchange such as where a single order server may notconnect directly to an electronic exchange (e.g., due to exchange rulesor API limitations) or may connect with a limit to a number oftransaction processing. During and/or after the registration, the orderrouter may be assigned to administer communications between the tradingdevice (or trading session) and the electronic exchange. Alternatively,the order router may be assigned to the trader prior to registration.The assignment between the order router and the trading device may bestatic or dynamic. That is, for a static assignment, the trading device,or order routing to the electronic exchange, is assigned to the specificorder router. In a dynamic assignment, an order router is assigned foreach order routed between the trading device and the electronicexchange. After the registration, transactions and other communicationsmay be submitted between the trading device and the electronic exchangevia the assigned order router.

A static assignment may have less overhead or require less processingcycles, and thus, a static assignment may provide faster order routingcapabilities than a dynamic assignment, (i.e., the trading device isknown). The order router may administer trade communications frommultiple trading devices (and thus traders) to the electronic exchange.An amount of traffic handled by an order router may relate to the amountof volume or traffic from the trading devices to which it has beenassigned. An order router that is assigned to trading devices that eachhas an increased volume may use increased processing overhead to handlethe increased traffic. Limitations of the order router and/or theelectronic exchange may introduce delays in the trade communicationsbetween an order router and the electronic exchange. Thus, a staticassignment may increase a risk of an order being queued due to the orderrouter being busy servicing another order or the order router may havereached or exceeded its throttling limit.

Thus, in general, it is desirable to improve one, some, or all of thecomponents in the electronic trading system.

SUMMARY

Embodiments of sticky order routers may include methods, systems,apparatuses and the like.

An exemplary embodiment for order routing in an electronic tradingenvironment with sticky order routers includes multiple order routers incommunication with an electronic exchange, at least one transactionmessage traffic monitor and an order router balancer. The onetransaction message traffic monitor and an order router balancer may bea single device or multiple components, such as an order Server or ordermanagement system. In an embodiment, trading sessions are generallyassigned to one of the multiple order routers. The trading sessions maybe assigned to an order router according to a round robin assignmentalgorithm, randomly, based on history for the trading session, based onhistorical data for a trader associated with a trading session,combinations thereof and the like.

The order routers are configured to communicate transaction messageswith the electronic exchange. Each of the order routers communicatestransaction messages for multiple assigned trading sessions for theorder router. The transaction message traffic monitor monitorstransaction message traffic between the order routers and the electronicexchange. In response to a determination that a trading session may beassigned to another order router, the order router balancer re-assignthat trading session to the other second order router. The determinationmay be made, for example, according to a transaction message trafficcomparison between the order routers, a time of day, history for thetrading session or a trader associated with the trading session,combinations thereof and the like. In an example, when the transactionmessage traffic between the first order router and the electronicexchange exceeds transaction message traffic between the second routerand the electronic exchange, the order router balancer may re-assign thetrading session to the second order router.

Other embodiments of the present invention are described below. Inaddition, modifications may be made to the described embodiments withoutdeparting from the spirit or scope of the invention.

BRIEF DESCRIPTION OF THE FIGURES

Sticky order routers are described and illustrated via exemplaryembodiments, which are not limited by the accompanying figures. Figureshaving like reference numerals indicate similar elements.

FIG. 1 illustrates an exemplary electronic trading environment for asticky order router.

FIG. 2 illustrates an exemplary for sticky order routers in anelectronic trading environment.

FIG. 3 illustrates a flow chart for an exemplary method for routingtrade messages in an electronic exchange.

FIG. 4 illustrates an example of a configuration window for orderrouting.

DETAILED DESCRIPTION

I. Electronic Trading Environments

FIG. 1 illustrates an exemplary electronic trading environment for asticky order router. The electronic trading environment includes aclient device 102, a gateway 106, one or more electronic exchanges 104,and one or more routers 108. The client device 102 is operativelycoupled with the electronic exchange 104 through one or more devices,such as gateway 106 and router 102 for communication of information.Router 108 is configured to route messages between the gateway 106, andthus the client device 102, and the electronic exchange 104.

The electronic exchange 104 may list one or more tradeable objects fortrading. The electronic exchange 104 (e.g., CBOT, CME, Eurex, NASDAQ,NYSE etc.) includes at least one processor, or central computer forreceiving and matching orders for a tradeable object. An order that maynot be immediately matched may be stored and arranged in an order book.The order in the order book may be matched against a contra-side orderaccording to a match algorithm. The electronic trading environment mayinclude various electronic trading environments having the same,additional or alternative features.

The electronic exchange 104 also may distribute or broadcast informationrelated to orders pending and/or matched at the electronic exchange 104or other exchanges. The information may include data representing acurrent inside market (e.g., the lowest sell price (best ask) and thehighest buy price (best bid)), and/or all or a portion of the marketdepth, including quantities of the tradeable object available at theinside market and/or quantities of the tradeable object available atprices away from or outside of the inside market, to the extent thatsuch quantities are available. The information also may include news,charting data, the last traded price (LTP), last traded quantity (LTQ),and/or order-related information.

A quantity available at a price level may be provided in aggregate sums,such as a total buy or sell quantity available at a price level. Theextent that the market depth is provided generally depends on theexchange and/or other parameters, such as volume. Information related toorder fills (also referred to as order execution, filled orders, andorder completion) may be referred to as market data.

The client device 102 may be one or more devices, such as multiple workstations or a network of devices, and may execute one or moreapplications. Examples include one or more mainframe, desktop, notebook,tablet PC, handheld, personal digital assistant, Smartphone, server,gateway, combination thereof, or other computing device having one ormore processors or central processing units. For example, the clientdevice may be include any combination of one or more single ormulti-core processors, an operating system, one or more memory or datastorage devices, a data input interface for receiving data from acommunications network, a user input interface for receiving inputsignals from one or more input devices (e.g., a keyboard, a trackball,pen device, microphone, gazing detection device, mouse for click-basedtrading), and/or an output interface suitable for presenting information(e.g., a monitor or display device, audio device, or combinationthereof).

The client device 102 may display market information received from oneor more exchanges or other sources. For example, the display device is avideo display, such as an LCD-based or a gas plasma-based flat-paneldisplay, a display that shows three-dimensional images, audio devices,and/or Braille output devices or some other type of output device ormechanism. The display device may include an input device to provide forinteraction between the user and the information.

The client device 102 may be configured to submit one or more orders forone or more tradeable objects for trading. An order may includeinstructions or transaction messages related to an order. Transactionmessages may refer to any type of message sent to an electronic exchangeto place or submit a new order, cancel an existing order, change anexisting order or quote, initiate query about orders or order book forone or more tradeable objects, test a connection to, or communicationwith, an exchange, acknowledgements, fills, cancels, deletes, cancel andreplace, other well-known financial transaction messages, combinationsthereof and the like.

A trader, or other user of the client device 102, may send an order,such as by supplying one or more commands using one or more inputdevices associated with the client device, including a keyboard, a mouseor pointing device, a portion of the display, touching or controlling anarea of the display or area controlled by the display. The client device102 may generate transaction information in response to the user input.The transaction information may be sent to one or more exchanges.

Instructions or code for carrying out acts for sticky order routers maybe stored or otherwise recorded on a computer readable medium, such asnon-volatile media, volatile media and transmission media, includingfloppy disks, flexible disks, hard disks, magnetic tape, punch cards,CD-ROM, a RAM, a PROM, an EPROM, a FLASH-EPROM, and any other memorychip or cartridge, or medium from which a computer can read. Theprocessor may have sufficient processing capability for available marketinformation and for carrying out the acts.

Software and/or hardware may administer trading tools having interactivetrading screens on display devices for viewing the market information,entering and submitting orders, obtaining market quotes, and monitorpositions. Additionally or alternatively, the client device may automatetrading. An example of such trading tool includes X_TRADER® by TradingTechnologies International, Inc. of Chicago, Ill., and may also includean electronic trading interface, referred to as MD Trader®. Portions ofthe X_TRADER and the MD Trader style display are described in U.S. Pat.No. 6,772,132 for a “Click Based Trading With Intuitive Grid Display ofMarket Depth,” U.S. Pat. No. 6,938,011 for a “Click Based Trading withMarket Depth Display” U.S. Patent No. 7,127,424 for a “Click BasedTrading With Intuitive Grid Display of Market Depth and PriceConsolidation,” U.S. Pat. No. 7,389,268 for “Trading Tools ForElectronic Trading,” and U.S. Pat. No. 7,228,289 for “A System andMethod for Trading and Displaying Market Information in an ElectronicTrading Environment,” the contents of each are incorporated fully hereinby reference. Other trading tools may also or alternatively be used.

Access to the electronic exchanges from the client device 102 may beprovided through one or more gateways 106, and/or a combined gatewaythat provides access to multiple electronic exchanges. The gateway 106may reside on the client device, or it may be located on a separatephysical device on a computer network. Alternatively or in addition, asingle physical device may provide more than one a gateway 106. Inaddition or alternatively, router 108 may route data between gatewaysand electronic exchanges.

The gateway 106 may be a computing device having one or more single ormulti-core processors or central processing units, memory or datastorage devices, communication interfaces, user input interfaces, andoutput interfaces. The gateway 106 may include or access a database. Thegateway 106 may execute one or more gateway applications, may executeapplication programs of the client device 102, and/or the gatewayapplications may be performed by the client device 102.

The gateway 106 may track or otherwise monitor message flow and systemusage parameters for the amount of transaction messages to an exchange.For example, the gateway 106 may measure an amount of traffic, or numberor rate of transaction messages, through router 108 to ensure that thetraffic does not exceed predetermined message thresholds. The systempreferably acts to monitor and/or adjust order router assignments.Adjusting order router assignment may be adjusted according to accordingto limits of the order router and/or the electronic exchange. In anembodiment, a trading session may be assigned to an order router. Thetrading session may be assigned randomly, according to a round-robindecision-making process, and/or according to a trader's preferencesand/or historical trading volume. For example, a trader may be assignedto a predetermined order router.

II. Order Routing To Electronic Exchanges

According to an embodiment, an assignment for an order router may bechanged or later adjusted according to volume of transactions handled bythe order router, volume of transactions handled by another orderrouter, a predictive model, trader history, threshold limits or otherone or more other factors for determining whether to assign a tradingsession to another order router

FIG. 2 shows an exemplary system for stick order routers. The systemincludes one or more client devices 202, in communication with andelectronic exchange 220 through one or more gateways 210 and at leastone order router 214-218. The client device 202 may be configured toadminister or provide for an interface for electronic trading using oneor more trading tools 204-208. The trading tools 204-208 may beconfigured to provide an interface for a market for one or moretradeable objects. In addition, the trading tools 204-208 also may beconfigured to receive, filter, and/or process data from one or moreelectronic exchanges 220. The client device 202 may be a single device,multiple devices such as networked computers, processors, servers andthe like. The client device may be associated with a single trader, ormay be a trading house (or trading desk) for multiple traders.

Gateway 210 may be implemented on any one of the gateways 106illustrated in FIG. 1. The gateway 210 generally communicatesinformation between the client device 202 and the electronic tradingexchange 220 (e.g., CBOT, CME, Eurex, etc.). Gateway 210 may beconnected to, coupled with or otherwise in communication with clientdevices 202 and the electronic exchange 220 through a wired connection,a wireless connection, and/or a combination of a wired and wirelessconnection, such as LAN, WAN, or other connection medium. The gateway210 also may have an administrator interface 102 for monitoring thecommunications, distributing alerts concerning the use and status ofnetwork and exchange resources, and controlling communications.

The gateway 210 may reside on the same physical computing platform as aclient device 202, may be located on a separate physical device on acomputer network, and/or may be co-located with the electronic exchange220. The gateway 210 also or alternatively may also be distributed, suchas distributed across multiple devices in a computer network.

A physical embodiment of the gateway 210 may also implement furtherfeatures. In an example, a physical embodiment of the gateways 210, suchas a computing device may be one or more servers and implement functionssuch as a router, firewall, or other common network infrastructurecomponent. The gateway 210 also or alternatively may implement a priceserver, and/or a fill server. A price server and/or order server mayperform translation features to translate between a format orcommunication protocol provided by the electronic exchange to aninternal format, and maintain state or provide a record for which ordersare working at the electronic exchange, which order are in-flight, whichorders are on hold. The order server may also perform validity checkingon new orders or changes to working orders. In addition, a singlephysical device may provide more than one instantiation of a gateway 210or the gateway may be implemented across multiple devices. An API(applications programming interface—not shown) also may be providedbetween the trading workstation 202 and gateway 210.

As shown in FIG. 2, gateway 210 may include an order server 212. Theorder server 212 is configured to receive orders from the client device,process the order and/or format an order message to be sent to theelectronic exchange.

The electronic exchange may be any electronic exchange, electroniccommunication network, automated trading system and the like. In anembodiment, the electronic exchange is implemented as described forelectronic exchange 104 of FIG. 1.

The order routers 214-218 handle communications between the gateway 210and the electronic exchange. The communications generally includeinformation related to trade orders for tradeable object listed, matchedand/or otherwise traded via the electronic exchange 220. Although FIG. 2includes 3 order routers 214-218, more or fewer order routers may beprovided.

In an example, gateway 210 is connected to multiple client devices 202and multiple order routers 214-218. Each of the client devices may beassociated with one or more trading session. For example, a tradingsession may occur when a trader signs on, registers, joins, logs in,joins or otherwise registers with the gateway 210 and thus theelectronic exchange 220 for receiving data for a tradeable object fromthe electronic exchange and submitting orders to buy or sell tradeableobjects to the electronic exchange. The trading session may be ended bythe trader, such as by signing off, by the exchange, and/or by anadministrator.

The trading session may be assigned to an order router 214-218. Forexample, trading session N may be assigned to order router 216. Onceassigned to order router 216, communications for orders between theclient device 202 associated with trading session N and the electronicexchange 220 are routed to the electronic exchange 220 via the orderrouter 216. To identify order router 216 assigned for the tradingsession, order messages communicated between the client device 202 andthe electronic exchange may include an identifier in the order messageindicating that order router 216 has been assigned for handling orotherwise processing the order message.

Trading sessions may be assigned to one of the order routers 214-218randomly and/or through a round robin determination where order routersmay be assigned according to a sequence, series, succession and/or orderaccording to when a trading session is initiated. For example, orderrouters 214-218 may be assigned without order or prior determinationand/or order router 214 may be assigned to a first-initiated tradingsession, order router 216 is assigned to a second-initiated tradingsession, order router 218 is assigned a third-initiated trading sessionand then back to order router 214 for the next trading session.

In an alternative or additional embodiment, trading session may beassigned to a specific order router. For example, a trading session Nmay be primarily assigned to order router 214. Thus, when the traderassociated with trading session N signs on to trade, the trading sessionis assigned to order router 214. The trading session N also may beassigned without regard to other order router assignment protocols.

In an alternative embodiment, a trading session may be assigned to anorder router 214-218 based on historical data for a trader associatedwith the trading session. For example, the historical trading data mayrelate to past trades, number of trade orders, or trade order messagessubmitted by the trader. In an instance where the historical data showsthat the trader is a high volume trader, or is otherwise a heavy user oforder message traffic between the client device 202 and electronicexchange 220, the trading session of the trader may be assigned to oneof the order routers 214-218 having less order message traffic thanother order routers 214-218. In an instance where the historical datashow that the trader does not utilize as much trade message traffic, thetrading session for the trader may be assigned to an order routercapable of handling the order message traffic.

In an embodiment, the historical data may be compared to a thresholdwhere the trading session may be assigned to one of the order routers214-218 based on the comparison. The trading session also may beassigned to one of the order routers based on the comparison an amountof traffic being handled by the order router to which the tradingsession is being assigned and/or some or all other order routers.

In an embodiment, a transaction message traffic monitor 222 may monitorthe traffic between an order router 214-218 and electronic exchange 220.The transaction monitor 222 may be implemented with the gateway 210and/or with one or each of the order routers 214-218. The transactionmessage traffic monitor 22 may measure an amount of traffic flowingthrough the order router 214-218.

In an embodiment, the amount of traffic through an order router 214-218may be compared to a threshold. The threshold may be predetermined, andmay be provided by a user, the trader, an administrator or other party.When the amount of traffic through an order router exceeds a threshold,one or more of the trading sessions assigned to the order router 214-218may be assigned to another order router 214-218. The trading session tobe assigned may be selected based on the amount of traffic generated orused by the trading session, based on user preferences ordeterminations, randomly determined and/or other methods for identifyinga trading session to be reassigned. For example, when the amount oftraffic through order router 214 is determined to exceed a threshold, atrading session N assigned to order router 214 is determined to use thehighest level of order message traffic of trading sessions assigned tothe order router and is assigned to a new order router 216.Subsequently, communications for trade orders associated with thetrading session N will flow through new order router 216. The new orderrouter 216 may be assigned randomly, through a round-robindetermination, based on time, and/or based on a determination that orderrouter 216 will have the new assignment for trading session N withoutexceeding threshold.

The threshold may be any number for identifying a maximum number oforder message traffic, allowable amount of traffic, allowable amount ofaverage traffic or bandwidth for a trading session combinations thereofand the like. The threshold may be a number of order messages persecond, may include a sliding window for messages transmitted, a totalnumber of order messages for the day, a number of in-flight ordermessages (i.e., submitted to an exchange but not yet acknowledged), anumber of data bytes per time or the total number of bytes for the day.A threshold may be selected so that limited resources may be evenlycontrolled fashion. The threshold may be different or substantially thesame for each user or group of users. A threshold may be set manually byan administrator, or may be automatically set and/or adjusted. Automaticadjustment may be based on the number of fills, a profit or othermeasure of success, a measure of bandwidth utilization combinationsthereof or the like.

In an alternative or additional embodiment, the amount of trafficthrough each order router may be monitored and/or compared to identifyan order to which a trading session may be re-assigned. In an example,the order message traffic through each order router is monitored andcompared against each other. Based on the comparison, trading session Nassigned to order router 214 may be re-assigned to order router 216. Thecomparison may identify that the order message traffic through orderrouter 214 with trading session N assigned to order router 214 isgreater than order message traffic through order router 216 with tradingsession N assigned to order router 216. Subsequently, trading session Nis reassigned to order router 216.

Additionally or alternatively, the comparison may identify a differencein the order message traffic is greater than a threshold. In an examplewhen the order message traffic is monitored for multiple order routers214-218, a difference between order message traffic between two orderrouters 214 and 216 may be determined. According to the comparison, atrading session N assigned to order router 214 may be identified andreassigned or switched to order router 216. Trading session N may beidentified by the amount of order message traffic associated withtrading session N, an average amount of order message traffic associatedwith trading session N, preferences or settings, a comparison of ordermessage traffic associated with trading session N with other ordermessage traffic associated with order router 214, a comparison of ordermessage traffic associated with trading session N with order messagetraffic associated with order router 216, historical data, determinativedata, combinations thereof and the like.

Additionally or alternatively, a trading session reassignment or switchto another order router may be time-based. In an exemplary embodiment,one or more trading sessions assigned to an order router may bereassigned or switched to a new order router at a predetermined time,such as a predetermined time of day. For example, when a trading day foran electronic exchange ends, or the electronic exchange closes, tradingsessions may be consolidated, where trading sessions are reassigned to alower number of order routers. Conversely, prior to or when a tradingday for an electronic exchange opening or beginning, trading sessionsfor one or more order router may be reassigned to so that a largernumber of order routers handle the trading sessions.

In an addition or alternative embodiment, predictive modeling may beemployed to determine when to reassign or switch a trading session fromone order router to another order router. Predictive modeling may beemployed using historical trading data for a trader associated with atrading session and/or market data for one or more tradeable objects.According to the predictive modeling, the trading session may beassigned to a new order router. For example, the predictive modeling mayidentify a tradeable object that the trader may trade during a period oftime, when volume reaches a certain level, when prices for the tradeableobject reach a certain level or change a certain amount and thepredictive modeling may identify that the amount of order messagetraffic for the trader may change. Thus, the trading session may bereassigned or switched to a new order router. Thus, should the ordermessage traffic associated with the trading session increase, a neworder router will provide a better opportunity for handling theincreased order message traffic.

In an embodiment, a notification may be provided identifying areassignment of an order router. An administrator may receive thenotification by email or other suitable messaging system, includinginstant messaging, and/or on-screen message, such with the interface.

FIG. 3 illustrates a flow chart for an exemplary method for routingtrade messages in an electronic exchange. In the exemplary method, atrading session is assigned to a trading session 310. The tradingsession may be assigned according to a round-robin protocol, randomly,pre-assigned, combinations thereof and the like as described. Ordermessage traffic for one or more order routers may be monitored orotherwise reviewed 312 to determine the amount of order message trafficassociated with the one or more order routers.

The amount of order message traffic may be compared 314 as described.The amount of order message traffic may be compared to a threshold, toorder message traffic through other order routers, to predeterminedsetting or preferences (e.g., administrator or trader settings), time,combinations thereof or the like. The threshold(s) may be static ordynamic. The threshold may be any number and may represent a number ororders currently processed, previously processed, or estimated to beprocessed.

In response to the comparison, one or more trading sessions may beidentified for reassignment or being switched to a new order router 316.The trading session to be switched or reassigned may be identifiedaccording to any of a variety of now known or later developed factorsfor identifying a trading session. Subsequently, order message trafficfor the switched or reassigned trading session may be through the neworder router.

III. Sticky Order Router Configuration

FIG. 4 illustrates an example of a configuration window 400 forproviding preferences or settings for a sticky order router. Theconfiguration window 300 may be used by an administrator, operator,and/or a trader to provide inputs that may be used for determiningwhether a trading session may participate in an order routerreassignment. A setting may be selected, such as from a pull-down menuand the like, and a window with options or selection provided foridentifying parameters for reassignment of a trading session, such aswith the configuration window 400. The configuration window 400 mayinclude a primary selector to identify whether a trading session andcorresponding order router assignment may be eligible for reassignment.The configuration window may allow for the selection or otheridentification for configuring order routing. For example, a user ortrader may select to have all, a portion of, or selected or identifiedorders or order types eligible for reassignment of an assigned orderrouter. The user may also identify or enter conditions for whenreassignment of an order router may occur. The user also may identify towhich order router an current assignment may be reassigned and whetherreassignment may be time sensitive or dependent on time of day, or othercondition.

Selections of the options may be made through now known and/or laterdeveloped methods for selecting options and/or setting parameters, suchas drop-down menus, radio buttons, text entry and the like. The optionsmay be made for an entire trading session, and other characteristic,such as a tradeable object, market activity, trader activity, timecombinations thereof and the like. The selection may be made prior to atrading session and/or during a trading session. Once selected, thesettings may be used for reassigning all or part of a trading session toa new order router.

In the above description those skilled in the art will recognize thatcircuit elements in block diagrams and boundaries between logic blocksare merely illustrative and that alternative embodiments may merge logicblocks or functional elements or impose an alternate decomposition offunctionality upon various logic blocks or elements. For example, thegateway features may be performed by a client device. Numerous otherexamples will be apparent to those of skill in the art.

It will be apparent to those of ordinary skill in the art that methodsinvolved in the system and methods described above may be embodied in acomputer program product that includes one or more computer readablemedia. For example, a computer readable medium can include a readablememory device, such as a hard drive device, a CD-ROM, a DVD-ROM, or acomputer diskette, having computer readable program code segments storedthereon. The computer readable medium can also include a communicationsor transmission medium, such as, a bus or a communication link, eitheroptical, wired or wireless having program code segments carried thereonas digital or analog data signals.

While the invention has been described in connection with a number ofexemplary embodiments, the foregoing is not intended to limit the scopeof the invention to a particular form, circuit arrangement, orsemiconductor topology. To the contrary, the invention is intended to bedefined only by the appended claims and to include such alternatives,modifications and variations as may be apparent to those skilled in theart upon reading the foregoing detailed description.

The claims should not be read as limited to the described order orelements unless stated to that effect. Therefore, all embodiments thatcome within the scope and spirit of the following claims and equivalentsthereto are claimed as the invention.

1. (canceled)
 2. A method for managing trading communications, themethod comprising: assigning, via a processor of a computing device, afirst trading session for a client device to a first order router of aplurality of order routers in communication with an electronic exchange,where the first trading session includes electronic tradingcommunications between the client device and the electronic exchange fortransacting orders for at least one tradeable object via the first orderrouter; comparing, via the processor of the computing device,communications traffic between the first order router and the electronicexchange for the trading session to a predetermined communicationsthreshold; and in response to determining that the communicationstraffic exceeds the predetermined communications threshold: assigning,via the processor of the computing device, a second trading session forthe client device to a second order router of the plurality of orderrouters in communication with the electronic exchange, and cancellingthe first trading session, where, subsequent to assigning the secondtrading session and cancelling the first trading session, electronictrading communications between the client device and the electronicexchange are via the second order router.
 3. The method of claim 2 whereassigning the first trading session comprises at least any one ofrandomly assigning the first trading session and assigning the firsttrading session in a round-robin.
 4. The method of claim 2 whereassigning the first trading session comprises assigning the firsttrading session according to historical data of trading volume for atrader associated with the trading session.
 5. The method of claim 4where the historical data comprises trading data for the traderassociated with the trading session prior assigning the first tradingsession to the first order router.
 6. The method of claim 2 where thesecond trading session is assigned to the second order router inresponse to determining that communications traffic between the firstorder router and the electronic exchange exceeds communications trafficbetween the second order router and the electronic exchange.
 7. Themethod of claim 2 where the computing device comprises the-clientdevice.
 8. A non-transitory computer readable medium having instructionsstored thereon, which when executed by a processor cause the processorto carry out acts comprising: assigning, via a processor of a computingdevice, a first trading session for a client device to a first orderrouter of a plurality of order routers in communication with anelectronic exchange, where the first trading session includes electronictrading communications between the client device and the electronicexchange for transacting orders for at least one tradeable object viathe first order router; comparing, via the processor of the computingdevice, communications traffic between the first order router and theelectronic exchange for the trading session to a predeterminedcommunications threshold; and in response to determining that thecommunications traffic exceeds the predetermined communicationsthreshold: assigning, via the processor of the computing device, asecond trading session for the client device to a second order router ofthe plurality of order routers in communication with the electronicexchange, and cancelling the first trading session, where, subsequent toassigning the second trading session and cancelling the first tradingsession, electronic trading communications between the client device andthe electronic exchange are via the second order router.
 9. Thenon-transitory computer readable medium of claim 8 where assigning thefirst trading session comprises at least any one of randomly assigningthe first trading session and assigning the first trading session in around-robin.
 10. The non-transitory computer readable medium of claim 8where assigning the first trading session comprises assigning the firsttrading session according to historical data of trading volume for atrader associated with the trading session.
 11. The non-transitorycomputer readable medium of claim 8 where the historical data comprisestrading data for the trader associated with the first trading sessionprior to assigning the first trading session to the first order router.12. The non-transitory computer readable medium of claim 8 where thesecond trading session is assigned to the second order router inresponse to determining that communications traffic between the firstorder router and the electronic exchange exceeds communications trafficbetween the second order router and the electronic exchange.
 13. Anorder routing system comprising: a plurality of order routers incommunication with an electronic exchange for electronicallycommunicating transaction messages, where each order router of theplurality of order routers communicates transaction messages between aplurality of client devices and at least one electronic exchange, wherefor a client device, a first trading session for the client device isassigned to a first order router of the plurality of order routers, andwhere the first trading session includes electronic tradingcommunications between the client device and the electronic exchange fortransacting orders for at least one tradeable object via the first orderrouter; a transaction message traffic monitor configured to monitorcommunications traffic between each order router of the plurality oforder routers and the at least one electronic exchange; and an orderrouter balancer configured to assigned a second trading session for theclient device to a second order router of the plurality of order routersaccording to communications traffic between the first order router andthe electronic exchange exceeding a first predetermined communicationsthreshold and to cancel the first trading session, where, subsequent tothe assigning the second trading session to the second order router,subsequent electronic trading communications between the client deviceand the electronic exchange are via the second order router.
 14. Theorder routing system of claim 13 where communications traffic betweenthe first order router and the electronic exchange exceedscommunications traffic between the second router and the electronicexchange prior to assigning the second trading session.
 15. The orderrouting system of claim 13 where each trading session of a plurality oftrading sessions is assigned to an associated order router according toa round robin.
 16. The order routing system of claim 13 where eachtrading session of a plurality of trading sessions is randomly assignedto an associated order router.
 17. The order routing system of claim 13where each trading session of a plurality of trading sessions isassigned according to historical data.